package com.softWang.system.controller.vo.systemUsers;


import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.softWang.common.constants.CommonStateEnum;
import com.softWang.common.utils.excel.annotation.DictFormat;
import com.softWang.common.utils.excel.annotation.EnumFormat;
import com.softWang.common.utils.excel.convert.DictConvert;
import com.softWang.common.utils.excel.convert.EnumConvert;
import com.softWang.system.constants.DictTypeConstant;
import com.softWang.system.po.SystemUsers;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@ApiModel
@ExcelIgnoreUnannotated
public class SystemUserExportResult {

    @ApiModelProperty(value = "主键id")
    private Long id;

    @ApiModelProperty(value = "用户名，最大长度为60位")
    @ExcelProperty("用户名")
    private String uname;


    @ApiModelProperty(value = "登录账户，最大长度为60位")
    @ExcelProperty("登录账户")
    private String loginName;

    @ApiModelProperty(value = "类型，(1.超级管理员，2.创建的普通管理员)")
    @ExcelProperty(value = "类型",converter = EnumConvert.class)
    @EnumFormat(enumClass = SystemUsers.UserType.class)
    private Integer type;

    @ApiModelProperty(value = "所属部门id")
    private Long deptid;

    @ApiModelProperty(value = "状态，0:正常,1:停用")
    @ExcelProperty(value = "状态",converter = EnumConvert.class)
    @EnumFormat(enumClass = CommonStateEnum.class)
    private Integer state;

    @ApiModelProperty(value = "手机号号码")
    @ExcelProperty("手机")
    private String tel;

    @ApiModelProperty(value = "性别，1:男;2:女;0:未知")
    @ExcelProperty(value = "用户性别", converter = DictConvert.class)
    @DictFormat(DictTypeConstant.USER_XIE_BIE)
    private String sex;

    @ApiModelProperty(value = "邮箱")
    @ExcelProperty("邮箱")
    private String email;

    @ApiModelProperty(value = "用户头像")
    private Long avatar;

    @ApiModelProperty(value = "所属部门名称")
    @ExcelProperty("所属部门")
    private String deptName;

    @ApiModelProperty(value = "拥有角色名称")
    @ExcelProperty("角色")
    private String roleNames;

    @ApiModelProperty(value = "创建人")
    private String cuserName;

}
